Pickup article cognitive fitment

ABSTRACT

Methods, computer program products, and systems are presented. The method computer program products, and systems can include, for instance: obtaining a request for in venue pickup of an article by a customer user, the request specifying an article identifier for the article; obtaining from a data repository article dimensional information of the article; evaluating loading of the article into a transport apparatus associated to the customer user based on the article dimensional information and transport apparatus dimensional information of the transport apparatus; and outputting a notification to the customer user based on the evaluating.

CROSS-REFERENCE TO RELATED APPLICATION

This application is a continuation of U.S. application Ser. No.15/473,910, filed Mar. 30, 2017, entitled “Pickup Article CognitiveFitment”, which is incorporated by reference herein in its entirety.

BACKGROUND

With traditional retail store shopping experiences, a customer selectsitems at a retail venue by placing them in a shopping cart. The customermoves around the retail venue with the items selected while looking forother items that they also may purchase. When the customer is ready topurchase the selected items, the customer moves to a location of a pointof sale terminal. The customer then purchases the items at this point ofsale terminal.

In some cases, a customer may wish to purchase more items than canreasonably be purchased using a traditional retail shopping experienceat a brick and mortar store. For example, a customer may desire topurchase more items than can be carried in a shopping cart in the retailvenue. As another example, the customer may not have sufficient room athome to retail venue items that are purchased from the retail venue.

Retail venues, on occasion, offer customers discounted prices for bulkpurchases. Bulk purchasing benefits both the retailer, who makes moresales, and the customer who gets a discounted price. However, customersplacing a limited number of items of a particular type in their shoppingcart may not be aware of a bulk price offer for the item. Additionally,even if the customer is aware of the bulk price, the customer may chooseto ignore the bulk price offer due to limited storage, productexpiration dates, and other factors.

One current approach to improving the retail venue shopping experienceincludes having retail venue clerks offer shipping to customers forlarge and heavy items. These items may be, for example, furniture andappliances. This approach is limited in a number of ways. For example, asufficient number of retail venue clerks may not be available to do thework of setting up the shipping of the items. As another example, theadditional time spent by retail venue clerks setting up the shipping ofthe items may be undesirable when compared to time the retail venueclerks spend on other tasks.

Another approach to improving the retail venue shopping experienceincludes having a customer purchase an item for pickup at the retailvenue. For example, when a large or expensive item is selected, acustomer may be directed by the retail venue to pick up the item at aspecified location of the store. For example, the customer may bedirected to pickup and purchase an item at a customer service desk atthe retail venue. As another example, the customer may be directed tocollect the item, after purchase, at a location of the retail venuesuited for pickup of large items. In some cases, selecting items topurchase may be limited to in-venue pickup at the time of purchase.

SUMMARY

Shortcomings of the prior art are overcome, and additional advantagesare provided, through the provision, in one aspect, of a method. Themethod can include, for example: obtaining a request for in venue pickupof an article by a customer user, the request specifying an articleidentifier for the article; obtaining from a data repository articledimensional information of the article; evaluating loading of thearticle into a transport apparatus associated to the customer user basedon the article dimensional information and transport apparatusdimensional information of the transport apparatus; and outputting anotification to the customer user based on the evaluating.

In another aspect, a computer program product can be provided. Thecomputer program product can include a computer readable storage mediumreadable by one or more processing unit and storing instructions forexecution by one or more processor for performing a method. The methodcan include, for example: obtaining a request for in venue pickup of anarticle by a customer user, the request specifying an article identifierfor the article; obtaining from a data repository article dimensionalinformation of the article; evaluating loading of the article into atransport apparatus associated to the customer user based on the articledimensional information and transport apparatus dimensional informationof the transport apparatus; and outputting a notification to thecustomer user based on the evaluating.

In a further aspect, a system can be provided. The system can include,for example a memory. In addition, the system can include one or moreprocessor in communication with the memory. Further, the system caninclude program instructions executable by the one or more processor viathe memory to perform a method. The method can include, for example:obtaining a request for in venue pickup of an article by a customeruser, the request specifying an article identifier for the article;obtaining from a data repository article dimensional information of thearticle; evaluating loading of the article into a transport apparatusassociated to the customer user based on the article dimensionalinformation and transport apparatus dimensional information of thetransport apparatus; and outputting a notification to the customer userbased on the evaluating.

Additional features are realized through the techniques set forthherein. Other embodiments and aspects, including but not limited tomethods, computer program product and system, are described in detailherein and are considered a part of the claimed invention.

BRIEF DESCRIPTION OF THE DRAWINGS

One or more aspects of the present invention are particularly pointedout and distinctly claimed as examples in the claims at the conclusionof the specification. The foregoing and other objects, features, andadvantages of the invention are apparent from the following detaileddescription taken in conjunction with the accompanying drawings inwhich:

FIG. 1 depicts a system having manager system in one embodiment;

FIG. 2 is a flowchart for use in evaluating loading of an article into avehicle in one embodiment;

FIG. 3 depicts a user interface for use in defining an order for invenue pickup in one embodiment;

FIG. 4 depicts a user interface for use in crowdsourcing data into adata repository in one embodiment;

FIG. 5 depicts a user interface for use in crowdsourcing data into adata repository in one embodiment;

FIG. 6 is a flowchart for use in evaluating loading of an article into avehicle;

FIG. 7 is a flowchart for use in evaluating loading of an article into avehicle;

FIG. 8 depicts a computing node according to one embodiment;

FIG. 9 depicts a cloud computing environment according to oneembodiment; and

FIG. 10 depicts abstraction model layers according to one embodiment.

DETAILED DESCRIPTION

Referring to FIG. 1 there is set forth a system 100 for use and supportof providing assistance to users in loading articles into transportapparatus which can be provided e.g. by vehicles. In one embodiment,system 100 can include manager system 110 having an associated datarepository 112, a plurality of computer devices 130A-130Z to which canbe associated with a different user, a plurality of transport apparatussystem e.g. which can be provided by vehicle systems 131A-131Z each ofwhich can be associated with a certain user, a venue system 140 disposedin a retail venue 142 which can be located in a particular geographicalarea indicated by border 144. Retail venue 142 can include a transportapparatus loading area e.g. which can be provided by vehicle loadingarea 146, a location wherein articles for in-venue pickup can be loadedinto a transport apparatus. System 100 can also include a plurality ofenterprise computer devices 150A-150Z which can be used by enterprisepersonnel and which can also be referred to as enterprise personnel usercomputer devices. The systems and devices shown in FIG. 1 can be incommunication with one another via network 160. Computer devices130A-130Z and vehicle systems 131A-131Z can transition from locationsinternal and external to venue 142 and thus are shown as being partiallyinternal to border 144 defining retail venue 142. Enterprise computerdevices 150Z are shown as being external to venue 142 defined by border144, but can also be used within venue 142.

Manager system 110, computer devices 130A-130Z, vehicle systems131A-131Z and a venue system 140 can be computing node based devices incommunication with one another via communication via network 160. Forexample, network 160 may be a physical network or a virtual network. Aphysical network can be, for example, a physical telecommunicationsnetwork connecting numerous computer nodes or systems, such as computerservers and computer clients. By contrast a virtual network can, forexample, combine numerous physical networks or parts thereof into alogical virtual network. In another example, numerous virtual networkscan be defined over a single physical network.

In one embodiment manager system 110 can be external to venue system 140and to each of the one or more user computer device 130A-130Z,150A-150Z. In one embodiment manager system 110 can be co-located withvenue system 140. In one embodiment manager system 110 can be co-locatedwith each of the one or more computer device 130A-130Z, 150A-150Z.Regarding one or more user computer device 130A-130Z a computer deviceof one or more user computer device 130A-130Z in one embodiment can be acomputing node based device provided by a client computer, e.g. a mobiledevice, e.g. a smartphone or tablet, a laptop or PC that runs one ormore program including a web browser for browsing web pages. Regardingone or more enterprise computer device 150A-150Z for use by personnel ofan enterprise organizational entity that operates manager system 110 andvenue 144 a computer device of one or more enterprise computer device150A-150Z in one embodiment can be a computing node based deviceprovided by a client computer, e.g. a mobile device, e.g. a smartphoneor tablet, a laptop or PC that runs one or more program including a webbrowser for browsing web pages.

Preparation and maintenance process 111 can populate data of datarepository 112 and maintain data of data repository 112 for use by otherprocesses run by manager system 110, such as loading evaluation process119 as is described further herein. Manager system 110 can run an orderintake process 113 for intake of orders of customer users. In oneaspect, such customer orders can include requests for in-venue pickup ofitems for purchase. Manager system 110 can also run natural languageprocessing (NLP process) 114. NLP process 114 can subject various dataobtained by manager system 110 for structuring such data. In one aspect,NLP process 114 can convert voice samples to text based data. In anotheraspect, NLP process 114 can process text data (data received in text foror converted from voice to text) to determine classifications forsegments of the data to tag incoming data. Classification processes thatcan be performed by NLP process 114 can include e.g. topicclassification and/or sentiment classification. Manager system 110 canalso run notification process 115 for providing notifications tocustomer users. Manager system 110 can also run a user-assisted trainingprocess 116 for guiding a customer user in a process for populating datarepository 112 with useful training data such as training data in theform of dimensional data of vehicles. Manager system 110 can also runthe enterprise-assisted training process 117 which process can guideenterprise personnel in a process for populating data repository 112with useful training data such as training data in the form ofdimensional data of vehicles and articles. Manager system 110 can runmachine learning process 118 which can record results data resultingfrom implemented processes, which results data can be referenced forpurposes of improving accuracy of processes run by manager system 110.Manager system 110 can run can run loading evaluation process 119 toperform evaluation of loading of an article into a vehicle to determinefitment of the article into a vehicle.

Data repository 112 can store various data for use in supporting variousprocesses of manager system 110. In area 1122 data repository 112 canstore vehicle data of vehicles such as vehicle 001, vehicle 002, andnumerous additional vehicles. In users area 1125 data repository 112 canstore data on various users of manager system 110, such as user 001,user 002, and numerous additional users. In area 1129 data repository112 can store data on various articles such as articles 001, articles002, and numerous additional articles. In vehicles area 1122 there canbe stored dimensional information for each record which can includeinformation on dimensions of one or more article accommodating storagearea of the vehicle specified by the vehicle identifier e.g. 001, 002,etc. Article accommodating storage area can be provided e.g. by a trunkof a vehicle. In area 1123 there can be stored for each vehicleidentifier, instruction information. Instruction information can includeinformation on how an article can be loaded into storage area of thevehicle. Instruction information can include multiple sets ofinstructions, each segment corresponding to a different article-typeidentifier. In other words, there can be provided a first set ofinstructions for a first article type, a second set of instructions fora second article type, a third set of instructions for a third articletype, etc. The article types can be classified according to dimensionsof the various articles. In vehicles area 1122 there can be storedidentifiers e.g. 001, 002, etc. for vehicle types e.g. make and yearand/or identifiers for certain specific vehicles e.g. as are typicallyidentified by VIN numbers. In area 1124 there can be stored data on thecurrent level of loading of the vehicle where the identifier for thevehicle identifies a certain vehicle e.g. for example in area 1124 therecan be stored data indicating whether a certain storage area of avehicle is filled with objects.

In one embodiment, manager system 110 can examine camera image dataoutput by a camera of vehicle system 131A for determining currentloading status of vehicle system 131A. In contact information area 1126of users area 1125, data repository 112 can store contact informationfor a user. In payment information area 1127 of users area 1125 datarepository 112 can store payment information of a user e.g. credit cardinformation associated with the user and in vehicles area 1128 of usersarea 1125 data repository can specify vehicle identifiers for vehiclesassociated with a user. Records in areas 1126-1128 can be stored for aplurality of users. In articles area 1129 data repository 112 can storevarious information on articles 001, 002 etc. available according toinventory of a business enterprise, e.g. provides by articles forpurchase. Articles information for each of a plurality of articles caninclude in area 1130 dimensional information of an article.

FIG. 2 is a flowchart illustrating a method 200 that can be performed bymanager system 210. At block 210, manager system 110 can run preparationand maintenance process 111 to populate prepare and maintain variousdata of data repository 112 for use by manager system 110 in runningvarious processes including loading evaluation process 119. Managersystem 110 can run preparation and maintenance process 111 to populateprepare and maintain various data of data repository 112 including dataof vehicles area 1121, users area 1125, and articles area 1129. Managersystem 110 can run preparation and maintenance process 111 iterativelyuntil process 111 is terminated at block 212.

At block 220, manager system 110 can run loading evaluation process 119to perform loading evaluation of an article with respect to a vehicle.Manager system 110 can run loading evaluation process 119 iterativelyuntil process 119 is terminated at block 222. Manager system 110 can runpreparation and maintenance process 111 and loading evaluation process119 concurrently and can run each of process 111 and process 119iteratively.

For performance of preparation and maintenance process 111, managersystem 110 can be configured to automatically process, e.g. by runningof NLP process 114, messages received by the organizational entityoperating manager system 110. For example, manager system 110 forpopulating data into vehicles area 1121 and articles area 1124 can beconfigured to request and receive messages from various data sourcesrespecting vehicles and articles. Such messages can include e.g.descriptive content, e.g. product specification, user manual andinstruction manual documents, from suppliers of vehicles that can beregistered into manager system 110, and from suppliers of articlesavailable for purchase and loading into a vehicle. Such messages canalso include e.g. descriptive content, e.g. product (vehicle or article)review postings from publicly accessible websites such as product reviewwebsites and social media websites.

On receipt of messages specifying information of vehicles manager system110 can run NLP process 114 to determine one or more topic classifierfor the vehicle. On receipt of messages manager system 1110 can tagsections of descriptive content messages relating to storage areadimensions can extract dimensional information from such sections, andcan store vehicle dimensional information in area 1123. Manager system110 based the performed topic tagging performed with respect to receivedmessage data identify and parse descriptive text sections of receivedmessage data providing instructional description of loading of articlesinto the vehicle and can store such text sections in instructions area1123.

On receipt of messages specifying information of articles manager system110 can run NLP process 114 to determine one or more topic classifierfor a the article available for purchase and pickup. On receipt ofmessages manager system 1110 can tag sections of descriptive contentmessages relating to article dimensions and can extract dimensionalinformation from such sections, and can store article dimensionalinformation in area 1131. Manager system 110 based the performed topictagging performed with respect to received message data can identify andparse descriptive text sections of received message data providinginstructional description of loading of an article into a vehicle andcan store such text sections in instructions area 1131.

Manager system 110 for populating data into area 1125 can be configuredto automatically receive messages from various data sources such as aweb server of manager system 110 that serves web pages providing aregistration user interface 300 as set forth in reference to FIG. 3.

In one embodiment manager system 110 for performance of block 210 caninstantiate structured data records in areas 1121, 1125, and 1129 thatare adapted for use by loading evaluation process 119. Structured datarecords can be stored in data repository 112 in association with orindependent of underlying message data processed to generate structureddata. A structured data record for a vehicle stored in the vehicles areacan have a specific identifier e.g. VID=[VIN number] (where the recordis generated by processing message data specifying a unique vehicleidentifier provided by a VIN number) and/or one or more generalidentifier, for example VID=[makeyear] where the general identifierprovides an identifier of make and year for the vehicle, orGID=[classification] where a general identifier provides aclassification of the National Highway Traffic Safety Administration(NHTSA), or another common classification, e.g. according to the FederalHighway Administration (FHA) or United States Environmental ProtectionAgency (USEPA). Such identifiers serve as indexes to facilitatesearching of data records. A structured data record stored in articlearea 1129 can have a specific identifier e.g. AID=[serial number] wherethe record is generated by processing message data specifying a uniquearticle identifier and one or more general identifier for the article.Such identifiers serve as indexes to facilitate searching of datarecords. Manager system 110 for running loading evaluation process 119can search for records specifying specific identifiers of vehicles andarticles and can use records specifying matching general identifiers ifthe records specifying specific identifiers are not sufficient or ifspecific identifiers for a vehicle and/or an article are not includedwith a request.

In one embodiment, data repository 112 can be configured to initializeresponsively to being populated with a threshold amount of data havingspecified attributes.

Referring to FIG. 3, there is shown a user interface 300 that can beused by a customer user to order articles for purchase, to specify invenue pickup, and register a customer as a registered user of managersystem 110. In area 306 the customer user can enter name information ofthe customer user, in area 310 the customer user can enter address andphone information of a customer user (e.g. including physical addressinformation and digital address information such as email address andsocial media account information), in area 312 a user can enter payment(e.g. credit card information) and in area 314 the customer user canspecify identifiers for vehicles associated to a customer user who isdefining registration information. A customer user can activate button316 to activate registration processes. Using area 314, more than onevehicle can be specified. In addition, dropdown menus can be provided inarea 314 e.g. as to make, year of cars to aide a user in theregistration of a vehicle. In addition, as is set forth herein a usercan be provided with a user interface 300 to permit auto registration ofa vehicle e.g. using scan imaging of a vehicle of a user. Using area 318of user interface 300, which can be displayed on a display of a usercomputer device e.g. computer device 130A, there can be displayed anorder area. A user can use order area 318 to define purchase orders. Inarea 326 of user interface 300, there can be displayed information on acurrent article designate for purchase including identifier information,text description of the article, and image e.g. single frame or videoinformation on the article designated for purchase. By selecting box 330using area 334, a user can specify the vehicle of the customer userwhich will be used for performance of in-venue pickup and can select box330 to initiate a request for in-venue pickup of the article that isspecified in area 322. In response to a request initiated by selectionof box 330 for in-venue pickup, manager system 110 can performevaluating of loading of the article specified in area 322 into thevehicle specified in area 334. Based on the evaluating, manager system110 can perform outputting of a notification in area 340. Thenotification can take on a variety of useful forms e.g. can include thenotification “The selected article will not fit in the selectedvehicle.” In response to a notification that a selected article is notloadable into a selected vehicle the user may then select an alternativevehicle for loading. Various specific information that can be displayedin area 340 can particular instructions for loading the articlespecified in area 326 into the vehicle specified in area 334.

It has been described in connection with the flowchart of FIG. 2 thatmanager system 110 can perform various process for automaticallypopulating data repository 112 with data for support of variousprocesses that can be run by manager system 110 such as loadingevaluation process 119. Automated data population processes initiated bymanager system 110 can be augmented with use of guided data inputprocesses initiated by users such as customer users and enterprise usersof system 110. By receiving data for populating data repository 112 inresponse to action of various individual users of system 100 managersystem 110 can be regarded to have performed crowdsourcing data into thedata repository 112.

FIG. 4 illustrates a user interface 400 for display on a computer deviceof a customer user e.g. customer user computer device 130A which can bea mobile device. User interface 400 can guide a customer user inentering useful data into data repository 112. User interface 400 can beused to guide entry of dimensional information of a particular vehicleassociated to a customer user using area 402, a customer user candesignate a vehicle for which additional dimensional information can beentered using user interface 400. Area 402 can include a dropdown menuspecifying registered vehicles of a user. Activating scan image ofvehicle button 406 a computer device e.g. computer device 130A of acomputer user can be activated to scan an image representation of thevehicle specified in area 402. In one embodiment, area 402 can have novehicle identifier specified and area 402 can be automatically populatedfor automatic registration of a vehicle on scanning of a vehicle byactivation of button 406, e.g. resulting in identification by patternrecognition or decodable indicia decoding such as bar code decoding. Inone embodiment, computer device 130A can be configured to include acamera configured to output three-dimensional point cloud image data. Onthe scanning of image data using a customer user computer device 130A,computer device 130A can automatically upload scanned image dataprocessing by manager system 110. Manager system 110 can extractdimensional information of storage areas of scanned spaces of a vehicleand can store such dimensional information in dimensions area 1122 ofdata repository 112.

FIG. 5 illustrates a user interface 500 for display on a computer deviceof an enterprise personnel user e.g. computer device 150A which can be amobile computer device. User interface 500 can guide an enterprisepersonnel user in entering useful data into data repository 112. Anenterprise personnel user can specify in area 504 of vehicle area 502 avehicle being subject to scanning and by activation of button 506 canactivate scanning of a vehicle to obtain image data representing thevehicle including storage areas thereof for accommodation of articles.An enterprise computer device e.g. computer device 150A can be equippedwith a camera configured to output three-dimensional point cloud imagedata from which dimensional information can be readily extracted. In oneembodiment, area 504 need not have any identifier specified and suchinformation can be automatically generated by the performance of imagescanning activated by activation of button 506, e.g. resulting inidentification by pattern recognition or decodable indicia decoding suchas bar code decoding. Using area 510 a user can initiate augmentingarticle information of data repository 112. An enterprise personnel usercan specify an article for which additional dimensional information isto be uploaded using area 512. On activation of scan image of articlebutton 514 the computer device of the enterprise user e.g. device 150Acan obtain scanned image data of an article. In on embodiment, area 510can be left blank and automatically populated by the scanning of anarticle to obtain image data e.g. by the decoding of a barcode includedon an article being scanned. The enterprise computer device 150A usedfor scanning can automatically upload scanned image data to managersystem 110, Manager system 110 can extract dimensional information fromthe image data and can populate the extracted dimensional informationinto area 1121 of vehicles area and into dimensions area 1130 ofarticles area 1129. Areas 502 and 510 can be utilized independently byan enterprise personnel user. For example, during a first data uploadsession the enterprise personnel user may use only area 502 and may bescanning in a fleet of vehicles, and during another unrelated dataupload session the enterprise personnel user can use only area 510 andcan be scanning in data for a set of differentiated articles.

In another use case however, an enterprise personnel user can be testingthe loadability for a particular article into a particular vehicle andcan be using a computer device 150A displaying user interface 500 forgenerating training data for data repository 112 specifically for use bymanager system 110 in evaluating loadability of articles according tothe particular article into vehicles according to the particularvehicle. System 100 can provide multiple identification labels (specificand general) relating to the particular vehicle and the particulararticle to for enhancing the usability of the uploaded data. Whenuploading information on a vehicle in connection with an article,respecting the loadability of the article into the vehicle, anenterprise personnel user can activate button 518 to record an audiomessage instructing a best practices the loading the article into thevehicle. Enterprise computer device 150A, on the obtaining of suchmessage can automatically upload the message to manager system 110.Manager system can run NLP process 114 to convert the voice-basedmessage into a text-based message, the text-based message with orwithout the underlying voice data can be stored in instructions area1123 of data repository 112. The enterprise personnel user can then beprompted to repeat the data training and uploading process using adifferent article e.g. of a different size and/or a different vehiclee.g. of a different size.

Manager system 110 in one embodiment can perform the method 600 as setforth in FIG. 6. At block 610, manager system 110 can perform obtainingfrom a customer user a request for in-venue pickup of an article forpurchase, the request specifying an article identifier for the article.At block 620 manager system 110 can perform obtaining from datarepository 112 dimensional information of the article. Manager system110 can perform at block 630, evaluating loading of the article into atransport apparatus associated to the customer user based on the articledimensional information and transport apparatus dimensional informationof the transport apparatus. At block 640, manager system 110 can performoutputting a notification to the customer user based on the evaluating.

A particular example of manager system 110 performing method 600 is setforth in reference to FIG. 7 illustrating the method for performance bysystem 110 from the perspective of manager system 110, its associateddata repository 112, computer device 130A, and vehicle system 131A.

At block 1301 computer device 130A can send user-defined information forreceipt by manager system 110 at block 1101. The customer user-definedinformation can include a request for in-venue pickup of an article forpurchase. At block 1311, vehicle system 131A can send data for receiptby manager system 110 at block 1102. The data received by manager system110 at block 1102 can include an image representation representing aninterior of a vehicle of vehicle system 131A including any articleaccommodating storage areas thereof. In one embodiment, duringperformance of block 1301 a user using computer device 130A can be usinguser interface 300 as set forth in FIG. 3 and vehicle system 131A can bea vehicle system of the vehicle specified in area 334 of user interface300. On selection of the vehicle in area 334, manager system 110 canestablish communication with the vehicle having vehicle system 131Abased on registration information associated with registration of thevehicle having vehicle system 131A into manager system 110. Informationin area 314 and or area 334 of user interface 300 specifying one or morevehicle of a current user can be specified by manual action of the userusing user interface 300 which can be a manually operated userinterface. In another example, user vehicle information of area 314 andarea 334 can be auto-populated by manager system 110 e.g. by way ofmanager system requesting information from a social media system (notshown) in communication with manager system and storing variousinformation about a user including on vehicles of the user. A socialmedia system in communication with manager system 110 can include acollection of files, including for example, HTML files, CSS files, imagefiles, and JavaScript files. Social media system 120 can be a socialwebsite such as FACEBOOK® (Facebook is a registered trademark ofFacebook, Inc.), TWITTER® (Twitter is a registered trademark of Twitter,Inc.), LINKEDIN® (LinkedIn is a registered trademark of LinkedInCorporation), or INSTAGRAM® (Instagram is a registered trademark ofInstagram, LLC).

At block 1103 manager system 110 can initiate evaluating the loading ofan article designated for purchase into a specified vehicle. Referringto user interface 300 of FIG. 3 the article can be the article specifiedin area 322 and the vehicle can be the vehicle specified in area 334.The sending of information at block 1301 can be initiated by a userselecting box 330 to initiate an in-venue pickup request. For performingand evaluating, manager system 110 can make multiple requests for dataon data repository 112, such data requests are represented by block 1104for receipt by data repository 112 at block 2121. On receipt of a datarequest at block 2121, data repository 112 at block 2122 send data tomanager system 110 as indicated by send block 2122 for receipt bymanager system 110 at block 1105. For performing data requests at block1105 can use the article identifier specified in area 326 and thevehicle identifier specified in area 334 to key data requests fromrecords stored in data repository 112 which can store article recordsindexed by article identifiers (specific and/or general) and vehiclerecords indexed by vehicle records (specific and/or general). On receiptof data from data repository 112 at block 1105 manager system 110 canperform processing of received data at block 1105. At block 1106,manager system 110 can complete evaluating of loading and can anddetermine whether evaluating information is complete and if loadingevaluating is complete can proceed to block 1107 to perform outputtingat block 1107. Outputting at block 1107 can include outputting anotification to a user.

Evaluating the loading of an article into a vehicle can include use ofdata received by manager system 110 at block 1101 from computer device130A and block 1102 from vehicle system 131A, as well as data receivedfrom data repository 112 at block 1105. As indicated by block 1106,manager system 110 can make multiple requests for data on datarepository 112 until evaluating of loading of an article into a vehicleis complete. For performing evaluating at blocks 1103-1106, managersystem 110 can compare dimensional information specifying dimensions ofan article to dimensional information specifying dimensions of avehicle. In performing evaluating at blocks 1103-1106 manager system 110can determine by computing article dimensions to vehicle dimensionswhether there are any conflicting dimensions between the articledimension and the vehicle dimensions e.g. whether there is one or morevehicle dimension based on one or more vehicle dimension that preventsan article from being fitted into a storage area of the vehicle. Inperforming evaluating at blocks 1103-1106 manager system 110 can run a3D bin packing process based on available dimensional information of thecurrent article and current vehicle. A 3D bin backing process canresolve defined NP complete bin packing problems. Exact solutions to NPcomplete problems can be computationally intensive and thus a 3D binpacking algorithm process can feature use of heuristics for reducedcomputational complexity, e.g. approximations such as the best fitdecreasing algorithm and the first fit decreasing algorithm. For use ofa 3D bin packing process manager system 110 can define bin inputs into a3D bin packing process based on vehicle dimensional information lookedup from area 1122 of data repository 112 and object inputs into a 3D binpacking process based on vehicle dimensional information looked up fromarea 1122 of data repository 112. Manager system 110 in some iterationsof performing evaluating at blocks 1103-1106 can determine that anarticle is not loadable into a current vehicle. In some instancesmanager system 110 in performing evaluating at blocks 1103-1106 candetermine that a current article would have been loadable into a vehiclebut that the vehicle, based on examination of image data received fromvehicle system 131A at block 1102 currently is loaded with one or moreobject interfering with loading of the article, such that loading of thearticle is prevented.

In one embodiment for highlighting features an article is specified inarea 326 of user interface 300 an identifier for article is sent atblock 1301 and manager system 110 at blocks 1103-1106 performs loadingevaluating with respect to an article. It will be understood that in oneembodiment, one or more article (e.g. 1 to N articles, N>1) can bespecified in area 326 of user interface 300 an identifier for one ormore article can be sent at block 1301 based on user defined data andmanager system 110 at blocks 1103-1106 can perform loading evaluatingwith respect to one or more article. Manager system 110 at blocks1103-1106 for performing evaluating with respect to more than onearticle that can be specified in area 322 of user interface 300 candefine more than one object input into a 3D bin packing process run bymanager system 110 as art of loading evaluation process 119. Each of themore than one input can include dimensional information for an articlespecified in area 322 of user interface 300.

At block 1107 on the completion of an evaluating, manager system 110 canperform outputting. The outputting can include outputting of thenotification. Outputting of a notification can include outputting of anotification for receipt by computer device 130A at block 1302. Theoutputting can be performed in one embodiment by outputting anotification to user interface 300 which in one embodiment can beprovided by a webpage-based user interface served by a server of managersystem 110 for viewing by client computer devices such as computerdevice 130A. Manager system 110 can provide alternative notifications inaddition or in the alternative e.g. via text message using a textmessage messaging system, a posting on a social network, an e-mail, andthe like. The notification subject to outputting at block 1107 bymanager system 110 can include a message containing a variety of usefulinformation. In one embodiment the notification can include specificinstructions as to how the current article, e.g. the article specifiedin area 326 of user interface 300 of FIG. 3 can be loaded into thecurrent vehicle as specified in area 334 of a user interface 300 asshown in FIG. 3. Manager system 110 can look up such specificinstructions using a current vehicle identifier and/or articleidentifier from instructions area 1123 and/or article instructions area1131.

Manager system 110 for performing of evaluating at blocks 1103-1106 e.g.responsively to determining that a current article is not loadable intoa current vehicle manager system 110 can also lookup information fromdata repository 112 to determine identifiers e.g. specific identifiersand or general identifiers for vehicles suitable for loading with thecurrent article. For providing such functionality, manager system 110for performing evaluating at blocks 1103-1106 can compare articleinformation of a current article to vehicle dimensional informationstored in records of repository 112 for vehicles in addition to thecurrent vehicle and can accordingly flag vehicle identifiers of vehicleshaving sufficient sized storage areas to accommodate the currentarticle. Manager system 110 having functionality to locate alternatevehicles for accommodating an article can display in notification area340 of user interface 300 identifiers e.g. vehicle makes and years, ofalternate vehicles suitable for accommodating loading of the currentarticle. The current user, based on such information, can gain access toone of the specified vehicle types (e.g. a family member or friend orvehicle rental agency may have possession of such vehicle) and canregister a vehicle suitable for accommodating loading using area 314.

Machine learning processes are described with reference to block 1108 ofthe flowchart of block 7. At block 1108, manager system 110 can performexamining and recording of results obtained by performing of a loadingevaluating e.g. at blocks 1103-1106, and further at block 1108 managersystem updating of data repository 112 based on the examining. Forexamining results obtained with use of a prior loading evaluationsdetermined by manager system 110, manager system 110 can examine cameraimage data provided by venue system 140. Venue system 140 in oneembodiment can be obtaining camera image data from a camera of venuesystem 140 that is operative for obtaining image data representing livein-venue pickups by prior users. A camera associated with venue system140 as shown in FIG. 1 can be oriented to obtain image data representinga live loading of an article into a vehicle at loading area 146 ofretail venue 142. Manager system 110 at block 1108 can examine imagedata representing a loading of an article into a vehicle. Manager system110 can be configured so that manager system 110 automatically examinesimage data representing a vehicle loading area 146, the image data beingautomatically obtained by manager system 110 using a camera of venuesystem 140. Manager system 110 in one embodiment can perform each ofblocks 1101-1107 automatically in real time (e.g. with only processingdelay and/or without user perceivable delay) and responsively to aperforming of a preceding block.

In one embodiment manager system 110 can perform examining at block 1108for examining a result of evaluating at blocks 1103-1106 a time afterperforming outputting at block 1107 to account for travel time of thecurrent user to a venue but that manager system 110 can be performingexamining recording an updating at block 1108 for a prior iteration ofevaluating at blocks 1103-1106 e.g. for another user at a time ofoutputting at block 1107 (which can occur in real time with no userperceivable delay in response to completion of evaluating at block 1106)and that manager system 110 can concurrently be performing the loop ofblocks 1101-1109 iteratively for multiple users at all times untiltermination.

Manager system 110 at block 1108 can examine camera image data obtainedby venue system 140 and can recognize based on an image data analysiswhether an article, contrary to the prior prediction performed bymanager system 110 by the evaluating at block 1103-1106, is in fact notloadable into a vehicle. Manager system 110 can perform updating of dataof data repository 112 based on such an examination result (article notloading) in a variety of ways, and by the updating of data repository112 can modify performing of evaluating by manager system 110 during anext iteration of manager system 110 of performing evaluating at block1103-1106.

Based on an examining of image data representing live loading at block1108 resulting in a determination that a prior positive evaluating ofloading is incorrect, manager system 110 in one embodiment can purgerecords from data repository 112, for example the records in area 1122and/or 1130 determined to yield the incorrect loading evaluating.Dimensional information for specific vehicles and specific articles candiffer slightly between records particularly since the records can begenerated from multiple sources (e.g. publicly available database,supplier data, user initiated data). Based on an examining of image datarepresenting live loading at block 1108 resulting in a determinationthat a prior positive evaluating of loading is incorrect, manager system110 in one embodiment can purge records from data repository 112, forexample the records in area 1122 indicating the largest dimensionalinformation for a certain vehicle for which there are multiple records,and/or for example the records in area 1130 indicating the smallestdimensional information for a certain article for which there aremultiple records.

Based on an examining of image data representing live loading at block1108 resulting in a determination that a prior positive evaluating ofloading is incorrect, manager system 110 in one embodiment can modifydimensional information of records from data repository 112, for exampledimensional information of the records in area 1122 and/or 1130determined to yield the incorrect loading evaluating. In such anembodiment, manager system 110 can decrease dimensions of dimensionalinformation of one or more vehicle record for the current vehicle, andmanager system 110 can increase dimensions of dimensional information ofone or more article record for the current article so that during a nextiteration of an evaluating at blocks 1103-1106 manager system 110 withthe same article-vehicle combination manager system 110 can correctlyperform loading evaluating to correctly predict that the article is notloadable.

Based on an examining of image data representing live loading at block1108 resulting in a determination that a prior positive evaluating ofloading is incorrect, manager system 110 in one embodiment can update aninvalid combinations lists that specifies combinations of articles andvehicles that are invalid. Manager system 110 can maintain in datarepository 112 such invalid combinations list. Manager system 110 can beconfigured so that manager system 110 for performing evaluating atblocks 1103-1106 examines the invalid combinations list, and if thecurrent combination is on the invalid combinations list manager system110 determines that the article is unloadable irrespective of whether acomparing of dimensional information for the article and vehicleindicated that the article is loadable. By updating an invalidcombinations list of data repository 112 at block 1108 manager system110 adjust performing of a next iteration of evaluating by managersystem 110 (which now for a next iteration of evaluating will consult anupdated invalid combinations list). Use of machine learning processes asset forth in reference to block 1108 can enhance accuracy while reducingreliance on rules based criteria for decision making and thus canprovide for reductions in computational overhead. Embodiments hereinrecognize that because of computational complexities associated withvolumetric geometries, management of computational overhead can be offundamental concern with respect to many embodiments herein. Oncompletion of block 1108 manager system 110 can proceed to return block1109 and return to block 1101.

Certain embodiments herein may offer various technical computingadvantages, involving computing advantages to address problems arisingin the realm of computer networks such as managing of computationaloverhead problems resulting from processing of data representingmultidimensional objects. In one embodiment, machine learning processescan be performed for increased accuracy and for reduction of reliance onrules based criteria and thus reduced computational overhead. In oneembodiment, a data repository can be leverages which can be populatedand managed by multiple processes including proactive data populatingprocess invoking search engines searching of public databases andreactive data populating processes reliant on initiation of input databy enterprise personnel users and customer users using user computerdevices. For enhancement of computational accuracies, embodiments canfeature computational platforms existing only in the realm of computernetworks such as artificial intelligence platforms, machine learningplatforms and crowdsourcing platforms wherein crowdsourcing platformscan be used to facilitate collection of rich data from a plurality ofusers who can include enterprise users and customer users. Embodimentsherein can employ data structuring processes, e.g. employingrelationship graphs for structuring data to transform unstructured dataoptimized for human processing into a form optimized for computerizedprocessing. Embodiments herein can provide results and advantages thatare not possible or practical without use of components of a technicalcomputing environment, such as providing for practical addressing ofcomputationally complex three dimensional space problems with use ofsuch platforms as machine learning and heuristics. Embodiments hereincan include artificial intelligence processing platforms featuringimproved processes to transform unstructured data into structured formpermitting computer based analytics and predictive decision making.Embodiments herein can include particular arrangements for bothcollecting rich data into a data repository and additional particulararrangements for updating such data and for use of that data to driveartificial intelligence decision making. Embodiments herein can includearrangements to collect data form a variety of data sources such asexternal systems, website hosting servers and camera equipped computerdevices for output of image data representing three dimensional objects.Embodiments herein can include deploying a camera for monitoring alocation and to output image data representing live vehicle loading andto drive machine learning processes based on the monitoring.

FIGS. 8-10 depict various aspects of computing, including a computersystem and cloud computing, in accordance with one or more aspects setforth herein.

It is understood in advance that although this disclosure includes adetailed description on cloud computing, implementation of the teachingsrecited herein are not limited to a cloud computing environment. Rather,embodiments of the present invention are capable of being implemented inconjunction with any other type of computing environment now known orlater developed.

Cloud computing is a model of service delivery for enabling convenient,on-demand network access to a shared pool of configurable computingresources (e.g. networks, network bandwidth, servers, processing,memory, storage, applications, virtual machines, and services) that canbe rapidly provisioned and released with minimal management effort orinteraction with a provider of the service. This cloud model may includeat least five characteristics, at least three service models, and atleast four deployment models.

Characteristics are as follows:

On-demand self-service: a cloud consumer can unilaterally provisioncomputing capabilities, such as server time and network storage, asneeded automatically without requiring human interaction with theservice's provider.

Broad network access: capabilities are available over a network andaccessed through standard mechanisms that promote use by heterogeneousthin or thick client platforms (e.g., mobile phones, laptops, and PDAs).

Resource pooling: the provider's computing resources are pooled to servemultiple consumers using a multi-tenant model, with different physicaland virtual resources dynamically assigned and reassigned according todemand. There is a sense of location independence in that the consumergenerally has no control or knowledge over the exact location of theprovided resources but may be able to specify location at a higher levelof abstraction (e.g., country, state, or datacenter).

Rapid elasticity: capabilities can be rapidly and elasticallyprovisioned, in some cases automatically, to quickly scale out andrapidly released to quickly scale in. To the consumer, the capabilitiesavailable for provisioning often appear to be unlimited and can bepurchased in any quantity at any time.

Measured service: cloud systems automatically control and optimizeresource use by leveraging a metering capability at some level ofabstraction appropriate to the type of service (e.g., storage,processing, bandwidth, and active user accounts). Resource usage can bemonitored, controlled, and reported providing transparency for both theprovider and consumer of the utilized service.

Service Models are as follows:

Software as a Service (SaaS): the capability provided to the consumer isto use the provider's applications running on a cloud infrastructure.The applications are accessible from various client devices through athin client interface such as a web browser (e.g., web-based e-mail).The consumer does not manage or control the underlying cloudinfrastructure including network, servers, operating systems, storage,or even individual application capabilities, with the possible exceptionof limited user-specific application configuration settings.

Platform as a Service (PaaS): the capability provided to the consumer isto deploy onto the cloud infrastructure consumer-created or acquiredapplications created using programming languages and tools supported bythe provider. The consumer does not manage or control the underlyingcloud infrastructure including networks, servers, operating systems, orstorage, but has control over the deployed applications and possiblyapplication hosting environment configurations.

Infrastructure as a Service (IaaS): the capability provided to theconsumer is to provision processing, storage, networks, and otherfundamental computing resources where the consumer is able to deploy andrun arbitrary software, which can include operating systems andapplications. The consumer does not manage or control the underlyingcloud infrastructure but has control over operating systems, storage,deployed applications, and possibly limited control of select networkingcomponents (e.g., host firewalls).

Deployment Models are as follows:

Private cloud: the cloud infrastructure is operated solely for anorganization. It may be managed by the organization or a third party andmay exist on-premises or off-premises.

Community cloud: the cloud infrastructure is shared by severalorganizations and supports a specific community that has shared concerns(e.g., mission, security requirements, policy, and complianceconsiderations). It may be managed by the organizations or a third partyand may exist on-premises or off-premises.

Public cloud: the cloud infrastructure is made available to the generalpublic or a large industry group and is owned by an organization sellingcloud services.

Hybrid cloud: the cloud infrastructure is a composition of two or moreclouds (private, community, or public) that remain unique entities butare bound together by standardized or proprietary technology thatenables data and application portability (e.g., cloud bursting forload-balancing between clouds).

A cloud computing environment is service oriented with a focus onstatelessness, low coupling, modularity, and semantic interoperability.At the heart of cloud computing is an infrastructure comprising anetwork of interconnected nodes.

Referring now to FIG. 8, a schematic of an example of a computing nodeis shown. Computing node 10 is only one example of a computing nodesuitable for use as a cloud computing node and is not intended tosuggest any limitation as to the scope of use or functionality ofembodiments of the invention described herein. Regardless, computingnode 10 is capable of being implemented and/or performing any of thefunctionality set forth hereinabove. Computing node 10 can beimplemented as a cloud computing node in a cloud computing environment,or can be implemented as a computing node in a computing environmentother than a cloud computing environment.

In computing node 10 there is a computer system 12, which is operationalwith numerous other general purpose or special purpose computing systemenvironments or configurations. Examples of well-known computingsystems, environments, and/or configurations that may be suitable foruse with computer system 12 include, but are not limited to, personalcomputer systems, server computer systems, thin clients, thick clients,hand-held or laptop devices, multiprocessor systems,microprocessor-based systems, set top boxes, programmable consumerelectronics, network PCs, minicomputer systems, mainframe computersystems, and distributed cloud computing environments that include anyof the above systems or devices, and the like.

Computer system 12 may be described in the general context of computersystem-executable instructions, such as program processes, beingexecuted by a computer system. Generally, program processes may includeroutines, programs, objects, components, logic, data structures, and soon that perform particular tasks or implement particular abstract datatypes. Computer system 12 may be practiced in distributed cloudcomputing environments where tasks are performed by remote processingdevices that are linked through a communications network. In adistributed cloud computing environment, program processes may belocated in both local and remote computer system storage media includingmemory storage devices.

As shown in FIG. 8, computer system 12 in computing node 10 is shown inthe form of a general-purpose computing device. The components ofcomputer system 12 may include, but are not limited to, one or moreprocessor 16, a system memory 28, and a bus 18 that couples varioussystem components including system memory 28 to processor 16. In oneembodiment, computing node 10 is a computing node of a non-cloudcomputing environment. In one embodiment, computing node 10 is acomputing node of a cloud computing environment as set forth herein inconnection with FIGS. 9-10.

Bus 18 represents one or more of any of several types of bus structures,including a memory bus or memory controller, a peripheral bus, anaccelerated graphics port, and a processor or local bus using any of avariety of bus architectures. By way of example, and not limitation,such architectures include Industry Standard Architecture (ISA) bus,Micro Channel Architecture (MCA) bus, Enhanced ISA (EISA) bus, VideoElectronics Standards Association (VESA) local bus, and PeripheralComponent Interconnects (PCI) bus.

Computer system 12 typically includes a variety of computer systemreadable media. Such media may be any available media that is accessibleby computer system 12, and it includes both volatile and non-volatilemedia, removable and non-removable media.

System memory 28 can include computer system readable media in the formof volatile memory, such as random access memory (RAM) 30 and/or cachememory 32. Computer system 12 may further include otherremovable/non-removable, volatile/non-volatile computer system storagemedia. By way of example only, storage system 34 can be provided forreading from and writing to a non-removable, non-volatile magnetic media(not shown and typically called a “hard drive”). Although not shown, amagnetic disk drive for reading from and writing to a removable,non-volatile magnetic disk (e.g., a “floppy disk”), and an optical diskdrive for reading from or writing to a removable, non-volatile opticaldisk such as a CD-ROM, DVD-ROM or other optical media can be provided.In such instances, each can be connected to bus 18 by one or more datamedia interfaces. As will be further depicted and described below,memory 28 may include at least one program product having a set (e.g.,at least one) of program processes that are configured to carry out thefunctions of embodiments of the invention.

One or more program 40, having a set (at least one) of program processes42, may be stored in memory 28 by way of example, and not limitation, aswell as an operating system, one or more application programs, otherprogram processes, and program data. One or more program 40 includingprogram processes 42 can generally carry out the functions set forthherein. In one embodiment, manager system 110 can include one or morecomputing node 10 and can include one or more program 40 for performingfunctions described with reference to method 200 of FIG. 2 and forperforming functions described with reference to method 600 of FIG. 6,and functions described with reference to manager system 110 as setforth in the flowchart of FIG. 7. In one embodiment, one or more usercomputer device 130A-130Z can include one or more computing node 10 andcan include one or more program 40 for performing functions describedwith reference to one or more user computer device 130A as set forth inthe flowchart of FIG. 7. In one embodiment, one or more vehicle system131A-131Z can include one or more computing node 10 and can include oneor more program 40 for performing functions described with reference toone or more vehicle system 131A as set forth in the flowchart of FIG. 7.

Computer system 12 may also communicate with one or more externaldevices 14 such as a keyboard, a pointing device, a display 24, etc.;one or more devices that enable a user to interact with computer system12; and/or any devices (e.g., network card, modem, etc.) that enablecomputer system 12 to communicate with one or more other computingdevices. Such communication can occur via Input/Output (I/O) interfaces22. Still yet, computer system 12 can communicate with one or morenetworks such as a local area network (LAN), a general wide area network(WAN), and/or a public network (e.g., the Internet) via network adapter20. As depicted, network adapter 20 communicates with the othercomponents of computer system 12 via bus 18. It should be understoodthat although not shown, other hardware and/or software components couldbe used in conjunction with computer system 12. Examples, include, butare not limited to: microcode, device drivers, redundant processingunits, external disk drive arrays, RAID systems, tape drives, and dataarchival storage systems, etc. In addition to or in place of havingexternal devices 14 and display 24, which can be configured to provideuser interface functionality, computing node 10 in one embodiment caninclude display 25 connected to bus 18. In one embodiment, display 25can be configured as a touch screen display and can be configured toprovide user interface functionality, e.g. can facilitate virtualkeyboard functionality and input of total data. Computer system 12 inone embodiment can also include one or more sensor device 27 connectedto bus 18. One or more sensor device 27 can alternatively be connectedthrough I/O interface(s) 22. One or more sensor device 27 can include aGlobal Positioning Sensor (GPS) device in one embodiment and can beconfigured to provide a location of computing node 10. In oneembodiment, one or more sensor device 27 can alternatively or inaddition include, e.g., one or more of a camera, a gyroscope, atemperature sensor, a humidity sensor, a pulse sensor, a blood pressure(bp) sensor or an audio input device. In one embodiment one or moresensor device 27 can include a camera configured to output threedimensional (3D) point cloud image data. Computer system 12 can includeone or more network adapter 20. In FIG. 9 computing node 10 is describedas being implemented in a cloud computing environment and accordingly isreferred to as a cloud computing node in the context of FIG. 9.

Referring now to FIG. 9, illustrative cloud computing environment 50 isdepicted. As shown, cloud computing environment 50 comprises one or morecloud computing nodes 10 with which local computing devices used bycloud consumers, such as, for example, personal digital assistant (PDA)or cellular telephone 54A, desktop computer 54B, laptop computer 54C,and/or automobile computer system 54N may communicate. Nodes 10 maycommunicate with one another. They may be grouped (not shown) physicallyor virtually, in one or more networks, such as Private, Community,Public, or Hybrid clouds as described hereinabove, or a combinationthereof. This allows cloud computing environment 50 to offerinfrastructure, platforms and/or software as services for which a cloudconsumer does not need to maintain resources on a local computingdevice. It is understood that the types of computing devices 54A-N shownin FIG. 9 are intended to be illustrative only and that computing nodes10 and cloud computing environment 50 can communicate with any type ofcomputerized device over any type of network and/or network addressableconnection (e.g., using a web browser).

Referring now to FIG. 10, a set of functional abstraction layersprovided by cloud computing environment 50 (FIG. 9) is shown. It shouldbe understood in advance that the components, layers, and functionsshown in FIG. 10 are intended to be illustrative only and embodiments ofthe invention are not limited thereto. As depicted, the following layersand corresponding functions are provided:

Hardware and software layer 60 includes hardware and softwarecomponents. Examples of hardware components include: mainframes 61; RISC(Reduced Instruction Set Computer) architecture based servers 62;servers 63; blade servers 64; storage devices 65; and networks andnetworking components 66. In some embodiments, software componentsinclude network application server software 67 and database software 68.

Virtualization layer 70 provides an abstraction layer from which thefollowing examples of virtual entities may be provided: virtual servers71; virtual storage 72; virtual networks 73, including virtual privatenetworks; virtual applications and operating systems 74; and virtualclients 75.

In one example, management layer 80 may provide the functions describedbelow. Resource provisioning 81 provides dynamic procurement ofcomputing resources and other resources that are utilized to performtasks within the cloud computing environment. Metering and Pricing 82provide cost tracking as resources are utilized within the cloudcomputing environment, and billing or invoicing for consumption of theseresources. In one example, these resources may comprise applicationsoftware licenses. Security provides identity verification for cloudconsumers and tasks, as well as protection for data and other resources.User portal 83 provides access to the cloud computing environment forconsumers and system administrators. Service level management 84provides cloud computing resource allocation and management such thatrequired service levels are met. Service Level Agreement (SLA) planningand fulfillment 85 provide pre-arrangement for, and procurement of,cloud computing resources for which a future requirement is anticipatedin accordance with an SLA.

Workloads layer 90 provides examples of functionality for which thecloud computing environment may be utilized. Examples of workloads andfunctions which may be provided from this layer include: mapping andnavigation 91; software development and lifecycle management 92; virtualclassroom education delivery 93; data analytics processing 94;transaction processing 95; and processing components 96 for loadingevaluating as set forth herein. The processing components 96 can beimplemented with use of one or more program 40 described in FIG. 8.

The present invention may be a system, a method, and/or a computerprogram product. The computer program product may include a computerreadable storage medium (or media) having computer readable programinstructions thereon for causing a processor to carry out aspects of thepresent invention.

The computer readable storage medium can be a tangible device that canretain and store instructions for use by an instruction executiondevice. The computer readable storage medium may be, for example, but isnot limited to, an electronic storage device, a magnetic storage device,an optical storage device, an electromagnetic storage device, asemiconductor storage device, or any suitable combination of theforegoing. A non-exhaustive list of more specific examples of thecomputer readable storage medium includes the following: a portablecomputer diskette, a hard disk, a random access memory (RAM), aread-only memory (ROM), an erasable programmable read-only memory (EPROMor Flash memory), a static random access memory (SRAM), a portablecompact disc read-only memory (CD-ROM), a digital versatile disk (DVD),a memory stick, a floppy disk, a mechanically encoded device such aspunch-cards or raised structures in a groove having instructionsrecorded thereon, and any suitable combination of the foregoing. Acomputer readable storage medium, as used herein, is not to be construedas being transitory signals per se, such as radio waves or other freelypropagating electromagnetic waves, electromagnetic waves propagatingthrough a waveguide or other transmission media (e.g., light pulsespassing through a fiber-optic cable), or electrical signals transmittedthrough a wire.

Computer readable program instructions described herein can bedownloaded to respective computing/processing devices from a computerreadable storage medium or to an external computer or external storagedevice via a network, for example, the Internet, a local area network, awide area network and/or a wireless network. The network may comprisecopper transmission cables, optical transmission fibers, wirelesstransmission, routers, firewalls, switches, gateway computers and/oredge servers. A network adapter card or network interface in eachcomputing/processing device receives computer readable programinstructions from the network and forwards the computer readable programinstructions for storage in a computer readable storage medium withinthe respective computing/processing device.

Computer readable program instructions for carrying out operations ofthe present invention may be assembler instructions,instruction-set-architecture (ISA) instructions, machine instructions,machine dependent instructions, microcode, firmware instructions,state-setting data, or either source code or object code written in anycombination of one or more programming languages, including an objectoriented programming language such as Smalltalk, C++ or the like, andconventional procedural programming languages, such as the “C”programming language or similar programming languages. The computerreadable program instructions may execute entirely on the user'scomputer, partly on the user's computer, as a stand-alone softwarepackage, partly on the user's computer and partly on a remote computeror entirely on the remote computer or server. In the latter scenario,the remote computer may be connected to the user's computer through anytype of network, including a local area network (LAN) or a wide areanetwork (WAN), or the connection may be made to an external computer(for example, through the Internet using an Internet Service Provider).In some embodiments, electronic circuitry including, for example,programmable logic circuitry, field-programmable gate arrays (FPGA), orprogrammable logic arrays (PLA) may execute the computer readableprogram instructions by utilizing state information of the computerreadable program instructions to personalize the electronic circuitry,in order to perform aspects of the present invention.

Aspects of the present invention are described herein with reference toflowchart illustrations and/or block diagrams of methods, apparatus(systems), and computer program products according to embodiments of theinvention. It will be understood that each block of the flowchartillustrations and/or block diagrams, and combinations of blocks in theflowchart illustrations and/or block diagrams, can be implemented bycomputer readable program instructions.

These computer readable program instructions may be provided to aprocessor of a general purpose computer, special purpose computer, orother programmable data processing apparatus to produce a machine, suchthat the instructions, which execute via the processor of the computeror other programmable data processing apparatus, create means forimplementing the functions/acts specified in the flowchart and/or blockdiagram block or blocks. These computer readable program instructionsmay also be stored in a computer readable storage medium that can directa computer, a programmable data processing apparatus, and/or otherdevices to function in a particular manner, such that the computerreadable storage medium having instructions stored therein comprises anarticle of manufacture including instructions which implement aspects ofthe function/act specified in the flowchart and/or block diagram blockor blocks.

The computer readable program instructions may also be loaded onto acomputer, other programmable data processing apparatus, or other deviceto cause a series of operational steps to be performed on the computer,other programmable apparatus or other device to produce a computerimplemented process, such that the instructions which execute on thecomputer, other programmable apparatus, or other device implement thefunctions/acts specified in the flowchart and/or block diagram block orblocks.

The flowcharts and block diagrams in the Figures illustrate thearchitecture, functionality, and operation of possible implementationsof systems, methods, and computer program products according to variousembodiments of the present invention. In this regard, each block in theflowchart or block diagrams may represent a module, segment, or portionof instructions, which comprises one or more executable instructions forimplementing the specified logical function(s). In some alternativeimplementations, the functions noted in the block may occur out of theorder noted in the figures. For example, two blocks shown in successionmay, in fact, be executed substantially concurrently, or the blocks maysometimes be executed in the reverse order, depending upon thefunctionality involved. It will also be noted that each block of theblock diagrams and/or flowchart illustration, and combinations of blocksin the block diagrams and/or flowchart illustration, can be implementedby special purpose hardware-based systems that perform the specifiedfunctions or acts or carry out combinations of special purpose hardwareand computer instructions.

The terminology used herein is for the purpose of describing particularembodiments only and is not intended to be limiting. As used herein, thesingular forms “a,” “an,” and “the” are intended to include the pluralforms as well, unless the context clearly indicates otherwise. It willbe further understood that the terms “comprise” (and any form ofcomprise, such as “comprises” and “comprising”), “have” (and any form ofhave, such as “has” and “having”), “include” (and any form of include,such as “includes” and “including”), and “contain” (and any form ofcontain, such as “contains” and “containing”) are open-ended linkingverbs. As a result, a method or device that “comprises,” “has,”“includes,” or “contains” one or more steps or elements possesses thoseone or more steps or elements, but is not limited to possessing onlythose one or more steps or elements. Likewise, a step of a method or anelement of a device that “comprises,” “has,” “includes,” or “contains”one or more features possesses those one or more features, but is notlimited to possessing only those one or more features. Forms of the term“based on” herein encompass relationships where an element is partiallybased on as well as relationships where an element is entirely based on.Methods, products and systems described as having a certain number ofelements can be practiced with less than or greater than the certainnumber of elements. Furthermore, a device or structure that isconfigured in a certain way is configured in at least that way, but mayalso be configured in ways that are not listed.

The corresponding structures, materials, acts, and equivalents of allmeans or step plus function elements in the claims below, if any, areintended to include any structure, material, or act for performing thefunction in combination with other claimed elements as specificallyclaimed. The description set forth herein has been presented forpurposes of illustration and description, but is not intended to beexhaustive or limited to the form disclosed. Many modifications andvariations will be apparent to those of ordinary skill in the artwithout departing from the scope and spirit of the disclosure. Theembodiment was chosen and described in order to best explain theprinciples of one or more aspects set forth herein and the practicalapplication, and to enable others of ordinary skill in the art tounderstand one or more aspects as described herein for variousembodiments with various modifications as are suited to the particularuse contemplated.

What is claimed is:
 1. A computer implemented method comprising:obtaining a request for in venue pickup of an article by a customeruser, the request specifying an article identifier for the article;obtaining from a data repository article dimensional information of thearticle; evaluating loading of the article into a transport apparatusassociated to the customer user based on the article dimensionalinformation and transport apparatus dimensional information of thetransport apparatus; and outputting a notification to the customer userbased on the evaluating, wherein the obtaining the request for in venuepickup includes obtaining data that specifies a request for in venuepickup of an article by a customer user, the request specifying anarticle identifier for the article and a transport apparatus to be usedby the customer user in performing the in venue pickup, wherein thecustomer user at a time of the obtaining the request is located a traveldistance away from a venue at which the in venue pickup is to beperformed, wherein the obtaining from a data repository articledimensional information of the article includes obtaining from the datarepository in response to input data that specifies the request for invenue pickup of the article dimensional information of the article anddimensional information of the transport apparatus, receiving articlesimage data representing articles of a plurality of articles responsivelyto initiations of a data uploads initiated by individual enterpriseusers associated to the venue using manually operated user interfaces ofrespective mobile computer devices of the individual enterprise users,and receiving transport apparatus image data representing transportapparatus of a plurality of transport apparatus responsively toinitiations of a data uploads initiated by individual enterprise usersassociated to the venue using manually operated user interfaces ofrespective mobile computer devices of the individual enterprise users.2. The computer implemented method of claim 1, wherein the obtaining therequest for in venue pickup includes obtaining through a web page baseduser interface input data that specifies a request for in venue pickupof an article by a customer user, wherein the customer user at a time ofthe obtaining the request is located a travel distance away from a venueat which the in venue pickup is to be performed.
 3. The computerimplemented method of claim 1, wherein the evaluating includes lookingup data from a data repository, wherein the method includes performing amachine learning process to monitor a result of the evaluating, whereinthe machine learning process to monitor includes examining image datarepresenting live loading of the article being loaded into the transportapparatus, wherein the method includes as a result of the machinelearning process to monitor determining that the article is in fact notloadable into the transport apparatus, and responsively to thedetermining that the article is in fact not loadable into the transportapparatus modifying a subsequent iteration of evaluating.
 4. Thecomputer implemented method of claim 1, wherein the method includesperforming a machine learning process to monitor a result of theevaluating, wherein the machine learning process to monitor includesexamining image data representing live loading of the article beingloaded into the transport apparatus, wherein the method includes as aresult of the examining modifying a subsequent iteration of evaluating.5. The computer implemented method of claim 1, wherein the datarepository includes a plurality of records for the transport apparatus,wherein the method includes performing a machine learning process tomonitor a result of the evaluating, and modifying a subsequent iterationof evaluating based on the monitoring, wherein the machine learningprocess to monitor includes examining camera image data representinglive loading of the article being loaded into the transport apparatus,wherein the method includes as a result of the evaluating determiningthat the article is loadable into the transport apparatus, wherein themethod includes as a result of the machine learning process to monitordetermining that the article is in fact not loadable into the transportapparatus, and wherein the modifying a subsequent iteration ofevaluating includes updating data of the data repository, wherein theupdating includes purging a record of the plurality of recordsspecifying largest dimensional information for the transport apparatus.6. The computer implemented method of claim 1, wherein the methodincludes performing a machine learning process to monitor a result ofthe evaluating, wherein the machine learning process to monitor includesmonitoring live loading of the article into the transport apparatus,wherein the method includes modifying a subsequent iteration ofevaluating based on the monitoring, wherein the modifying a subsequentiteration of evaluating includes updating data of the data repository,wherein the updating includes changing dimensional information storedwithin the data repository.
 7. The computer implemented method of claim1, wherein the obtaining the request for in venue pickup includesobtaining through a web page based user interface input data thatspecifies a request for in venue pickup of an article by a customeruser, wherein the data repository stores information on dimensions of aplurality of articles and information on dimensions of a plurality oftransport apparatus, the plurality of articles including the article,the plurality of transport apparatus including the transport apparatus.8. The computer implemented method of claim 1, wherein the obtaining therequest for in venue pickup includes obtaining through a web page baseduser interface input data that specifies a request for in venue pickupof an article by a customer user, wherein the data repository storesinformation on dimensions of a plurality of articles and information ondimensions of a plurality of transport apparatus, the plurality ofarticles including the article, the plurality of transport apparatusincluding the transport apparatus, wherein the evaluating includeslooking up data from the data repository, wherein the method includespopulating the data repository, wherein the populating the datarepository includes crowdsourcing data from a plurality of users,wherein the crowdsourcing includes collecting scanned image datarepresenting a plurality of different transport apparatus from mobilecomputer devices associated to a plurality of different customer users.9. The computer implemented method of claim 1, wherein the obtaining therequest for in venue pickup includes obtaining through a web page baseduser interface input data that specifies a request for in venue pickupof an article by a customer user, wherein the data repository storesinformation on dimensions of a plurality of articles and information ondimensions of a plurality of transport apparatus, the plurality ofarticles including the article, the plurality of transport apparatusincluding the transport apparatus, wherein the method includesperforming a machine learning process to monitor a result of theevaluating, and modifying a subsequent iteration of evaluating based onthe monitoring, wherein the machine learning process to monitor includesexamining camera image data representing live loading of the articlebeing loaded into the transport apparatus at the location of the pickup.10. The computer implemented method of claim 1, wherein the obtainingthe request for in venue pickup includes obtaining through a web pagebased user interface input data that specifies a request for in venuepickup of an article by a customer user, wherein the data repositorystores information on dimensions of a plurality of articles andinformation on dimensions of a plurality of transport apparatus, theplurality of articles including the article, the plurality of transportapparatus including the transport apparatus, wherein the method includespopulating the data repository, wherein the populating the datarepository includes performing search engine processes to search fordata from external data sources to receive from external data sourcesdimensional information for articles of the plurality of articles anddimensional information for transport articles of the plurality ofarticles, obtaining image data representing transport apparatus of theplurality of transport apparatus responsively to initiations of datauploads initiated by individual customer users using a manually operateduser interfaces of respective mobile computer devices of the individualcustomer users.
 11. The computer implemented method of claim 1, whereinthe obtaining the request for in venue pickup includes obtaining througha web page based user interface input data that specifies a request forin venue pickup of an article by a customer user, wherein the datarepository stores information on dimensions of a plurality of articlesand information on dimensions of a plurality of transport apparatus, theplurality of articles including the article, the plurality of transportapparatus including the transport apparatus, wherein the evaluatingloading includes performing evaluating, using a 3D bin packing process,loading of the article into a second transport apparatus, the secondtransport apparatus not associated to the customer user at a time of theevaluating, and wherein the outputting a notification includesoutputting a notification that includes an identifier of one or morealternate transport apparatus determined as a result of performing the3D bin packing process to accommodate loading of the article.
 12. Thecomputer implemented method of claim 1, wherein the obtaining therequest for in venue pickup includes obtaining through a web page baseduser interface input data that specifies a request for in venue pickupof an article by a customer user, wherein the data repository storesinformation on dimensions of a plurality of articles and information ondimensions of a plurality of transport apparatus, the plurality ofarticles including the article, the plurality of transport apparatusincluding the transport apparatus, wherein the method includespopulating the data repository, wherein the populating the datarepository includes performing search engine processes to search fordata from external data sources to receive from external data sourcesdimensional information for articles of the plurality of articles anddimensional information for transport articles of the plurality ofarticles, obtaining image data representing transport apparatus of theplurality of transport apparatus responsively to initiations of datauploads initiated by individual customer users using a manually operateduser interfaces of respective mobile computer devices of the individualcustomer users, wherein the evaluating loading includes performingevaluating, using a 3D bin packing process, loading of the article intoa second transport apparatus, the second transport apparatus notassociated to the customer user at a time of the evaluating, and whereinthe outputting a notification includes outputting a notification thatincludes an identifier of one or more alternate transport apparatusdetermined as a result of performing the 3D bin packing process toaccommodate loading of the article, wherein the data repository includesa plurality of article records for the article, and a plurality oftransport apparatus records for the transport apparatus, wherein themethod includes performing a machine learning process to monitor aresult of the evaluating, and modifying a subsequent iteration ofevaluating based on the monitoring, wherein the machine learning processto monitor includes examining camera image data representing liveloading of the article being loaded into the transport apparatus at alocation of the in venue pickup, wherein the method includes as a resultof the evaluating determining that the article is loadable into thetransport apparatus, wherein the method includes as a result of themachine learning process to monitor determining that the article is infact not loadable into the transport apparatus, and wherein themodifying a subsequent iteration of evaluating includes updating data ofthe data repository, wherein the updating includes purging a record ofthe plurality of records specifying smallest dimensional information forthe article, and wherein the updating includes purging a record of theplurality of records specifying largest dimensional information for thetransport apparatus, wherein the updating includes changing dimensionalinformation stored within the data repository, wherein the dimensionalinformation is selected from the group consisting of (a) dimensionalinformation for the article, and (b) dimensional information for thetransport apparatus, wherein the evaluating includes examining aninvalid combinations list that specifies invalid combinations ofarticles and transport apparatus wherein specified articles do not fitinto specified transport articles, and wherein the updating the datarepository includes updating the invalid combinations list to specify onthe invalid combinations list that that the article does not fit intothe transport apparatus.
 13. The computer implemented method of claim 1,wherein the method includes obtaining input data that specifies arequest for in venue pickup of an article by a customer user, whereinthe data repository stores information on dimensions of a plurality ofarticles and information on dimensions of a plurality of transportapparatus.
 14. The computer implemented method of claim 1, wherein themethod includes obtaining input data that specifies a request for invenue pickup of an article by a customer user, wherein the datarepository stores information on dimensions of a plurality of articlesand information on dimensions of a plurality of transport apparatus, theplurality of articles including the article, the plurality of transportapparatus including the transport apparatus, populating the datarepository, wherein the populating the data repository includesperforming search engine processes to search for data from external datasources to receive from external data sources dimensional informationfor articles of the plurality of articles and dimensional informationfor transport articles of the plurality of articles, obtaining imagedata representing transport apparatus of the plurality of transportapparatus responsively to initiations of data uploads initiated byindividual customer users.
 15. A computer program product comprising: acomputer readable storage medium readable by one or more processingcircuit and storing instructions for execution by one or more processorfor performing a method comprising: obtaining a request for in venuepickup of an article by a customer user, the request specifying anarticle identifier for the article; obtaining from a data repositoryarticle dimensional information of the article; evaluating loading ofthe article into a transport apparatus associated to the customer userbased on the article dimensional information and transport apparatusdimensional information of the transport apparatus; and outputting anotification to the customer user based on the evaluating, wherein theobtaining the request for in venue pickup includes obtaining data thatspecifies a request for in venue pickup of an article by a customeruser, the request specifying an article identifier for the article and atransport apparatus to be used by the customer user in performing the invenue pickup, wherein the customer user at a time of the obtaining therequest is located a travel distance away from a venue at which the invenue pickup is to be performed, wherein the obtaining from a datarepository article dimensional information of the article includesobtaining from the data repository in response to input data thatspecifies the request for in venue pickup of the article dimensionalinformation of the article and dimensional information of the transportapparatus, receiving articles image data representing articles of aplurality of articles responsively to initiations of a data uploadsinitiated by individual enterprise users associated to the venue usingmanually operated user interfaces of respective mobile computer devicesof the individual enterprise users, and receiving transport apparatusimage data representing transport apparatus of a plurality of transportapparatus responsively to initiations of a data uploads initiated byindividual enterprise users associated to the venue using manuallyoperated user interfaces of respective mobile computer devices of theindividual enterprise users.
 16. A system comprising: a memory; at leastone processor in communication with the memory; and program instructionsexecutable by one or more processor via the memory to perform a methodcomprising: obtaining a request for in venue pickup of an article by acustomer user, the request specifying an article identifier for thearticle; obtaining from a data repository article dimensionalinformation of the article; evaluating loading of the article into atransport apparatus associated to the customer user based on the articledimensional information and transport apparatus dimensional informationof the transport apparatus; and outputting a notification to thecustomer user based on the evaluating, wherein the obtaining the requestfor in venue pickup includes obtaining data that specifies a request forin venue pickup of an article by a customer user, the request specifyingan article identifier for the article and a transport apparatus to beused by the customer user in performing the in venue pickup, wherein thecustomer user at a time of the obtaining the request is located a traveldistance away from a venue at which the in venue pickup is to beperformed, wherein the obtaining from a data repository articledimensional information of the article includes obtaining from the datarepository in response to input data that specifies the request for invenue pickup of the article dimensional information of the article anddimensional information of the transport apparatus, receiving articlesimage data representing articles of a plurality of articles responsivelyto initiations of a data uploads initiated by individual enterpriseusers associated to the venue using manually operated user interfaces ofrespective mobile computer devices of the individual enterprise users,and receiving transport apparatus image data representing transportapparatus of a plurality of transport apparatus responsively toinitiations of a data uploads initiated by individual enterprise usersassociated to the venue using manually operated user interfaces ofrespective mobile computer devices of the individual enterprise users.17. The system of claim 16, wherein the obtaining the request for invenue pickup includes obtaining through a web page based user interfaceinput data that specifies a request for in venue pickup of an article bya customer user, wherein the data repository stores information ondimensions of a plurality of articles and information on dimensions of aplurality of transport apparatus, the plurality of articles includingthe article, the plurality of transport apparatus including thetransport apparatus.
 18. The system of claim 16, wherein the evaluatingincludes looking up data from the data repository, wherein the methodincludes populating the data repository, wherein the populating the datarepository includes crowdsourcing data from a plurality of users,wherein the crowdsourcing includes collecting scanned image datarepresenting a plurality of different transport apparatus from mobilecomputer devices associated to a plurality of different customer users.19. The system of claim 16, wherein the method includes populating thedata repository, wherein the populating the data repository includesperforming search engine processes to search for data from external datasources to receive from external data sources dimensional informationfor articles of the plurality of articles and dimensional informationfor transport articles of the plurality of articles, obtaining imagedata representing transport apparatus of the plurality of transportapparatus responsively to initiations of data uploads initiated byindividual customer users using a manually operated user interfaces ofrespective mobile computer devices of the individual customer users. 20.The system of claim 16, wherein the evaluating loading includesperforming evaluating, using a 3D bin packing process, loading of thearticle into a second transport apparatus, the second transportapparatus not associated to the customer user at a time of theevaluating, and wherein the outputting a notification includesoutputting a notification that includes an identifier of one or morealternate transport apparatus determined as a result of performing the3D bin packing process to accommodate loading of the article.